﻿using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Text;

namespace NP.BPMReportPlatform.Contract.Dtos
{
    public class ContractESignDto
    {
        public string Id { get; set; }

        /// <summary>
        /// 工号
        /// </summary>
        [ExporterHeader("工号")]
        [ImporterHeader(Name = "工号")]
        public string WorkNumber { get; set; }

        [ExporterHeader("姓名")]
        [ImporterHeader(Name = "姓名")]
        public string UserName { get; set; }

        /// <summary>
        /// 文件名称
        /// </summary>
        [ExporterHeader("文件名称")]
        [ImporterHeader(Name = "文件名称")]
        public string FileName { get; set; }

        /// <summary>
        /// 所属区域
        /// </summary>
        [ExporterHeader("所属区域")]
        [ImporterHeader(Name = "所属区域")]
        public string Region { get; set; }

        /// <summary>
        /// 所属部门
        /// </summary>
        [ExporterHeader("所属部门")]
        [ImporterHeader(Name = "所属部门")]
        public string Department { get; set; }

        /// <summary>
        /// 签署状态
        /// </summary>
        [ExporterHeader("签署状态")]
        [ImporterHeader(Name = "签署状态")]
        public string SignStatus { get; set; }

        /// <summary>
        /// 上传时间
        /// </summary>
        [ImporterHeader(IsIgnore = true)]
        [ExporterHeader(IsIgnore = true)]
        public DateTime? UploadTime { get; set; }
        [ExporterHeader("上传时间")]
        [ImporterHeader(IsIgnore = true)]
        public string UpoladTimeStr { get; set; }

        /// <summary>
        /// 电子签ID
        /// </summary>
        [ExporterHeader("电子签ID")]
        [ImporterHeader(Name = "电子签ID")]
        public string SignFlowId { get; set; }

        [ImporterHeader(IsIgnore = true)]
        [ExporterHeader(IsIgnore = true)]
        public DateTime AddTime { get; set; }
    }

    public class ContratEsignEditInput
    {
        public string Id { get; set; }

        public string AddUser { get; set; }

        public string AddUserName { get; set; }

        /// <summary>
        /// 工号
        /// </summary>
        public string WorkNumber { get; set; }

        /// <summary>
        /// 签署状态
        /// </summary>
        public string SignStatus { get; set; }

        /// <summary>
        /// 电子签ID
        /// </summary>
        public string SignFlowId { get; set; }

        /// <summary>
        /// 文件名称
        /// </summary>
        public string FileName { get; set; }

        /// <summary>
        /// 姓名
        /// </summary>
        public string UserName { get; set; }

        /// <summary>
        /// 所属部门
        /// </summary>
        public string Department { get; set; }

        /// <summary>
        /// 所属区域
        /// </summary>
        public string Region { get; set; }
    }

    public class ContractESignInput : PagedAndSortedRequestDto
    {
        public string WorkNumber { get; set; }

        public string UserName { get; set; }

        public string FileName { get; set; }

        public string Region { get; set; }

        public string Department { get; set; }

        /// <summary>
        /// （开始节点）
        /// </summary>
        public DateTime? StartCreationTime { get; set; }

        /// <summary>
        /// （结束节点）
        /// </summary>
        public DateTime? EndCreationTime { get; set; }

        /// <summary>
        /// 是否是残缺数据 姓名，区域，部门
        /// </summary>
        public int? IsIncomplete { get; set; }
    }
}
